Radar system and method including superresolution raid counting

ABSTRACT

A system identifies a number of targets within a main beam of an antenna array that transmits the main beam and receives echo returns from the main beam. A covariance matrix is generated using the echo returns. The presence of at least one target within a single range cell is detected. A plurality of consecutive pulses are transmitted in a direction of the single range cell within a sufficiently short period that the at least one target remains within the single range cell while the plurality of consecutive pulses are transmitted. An echo signal is sampled from each of the plurality of pulses. An updated covariance matrix is estimated each time the echo signal is sampled. An eigenvalue decomposition is updated each time the covariance matrix is updated. The number of targets in the single range cell is estimated, based on the updated eigenvalue decomposition.

FIELD OF THE INVENTION

The present invention relates to radar systems and methods generally, and more specifically to digital beamforming techniques.

BACKGROUND OF THE INVENTION

Conventional surveillance radar systems cannot resolve more than one target within a range-angle resolution cell while performing surveillance. Such resolution cells arise in radar from the use of finite signal bandwidth and antenna apertures.

In the case of an aircraft attack, it is possible for two or more vehicles to fly in close formation, so that a surveillance radar cannot resolve the number of targets until the aircraft are close to the radar, potentially losing valuable time in which defensive action might have been taken.

Similarly, in missile defense systems, it is possible for many targets within a single range-angle resolution cell to approach a surveillance radar without the radar being able to resolve the number of targets. In the missile defense scenario, the problem is compounded by the possibility that closely spaced re-entry vehicles, decoys, and/or debris may be present.

The failure to identify multiple threats within a single range cell can cause under-commitment of engagement measures.

SUMMARY OF THE INVENTION

The present invention is a method and system for identifying a number of targets within a main beam of an antenna array that transmits the main beam and receives echo returns from the main beam. A covariance matrix is generated using the echo returns. The presence of at least one target within a single range cell is detected. A plurality of consecutive pulses are transmitted in a direction of the single range cell within a sufficiently short period that the at least one target remains within the single range cell while the plurality of consecutive pulses are transmitted. An echo signal is sampled from each of the plurality of pulses. An updated covariance matrix is estimated each time the echo signal is sampled. An eigenvalue decomposition is updated each time the covariance matrix is updated. The number of targets in the single range cell is estimated, based on the eigenvalue decomposition.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram showing an exemplary scenario in which a plurality of targets appear within a single range cell.

FIG. 2 is a block diagram of an exemplary system according to the present invention.

FIG. 3 is a flow chart diagram showing a method of practicing the invention.

DETAILED DESCRIPTION

I. In advanced air and missile defense application, it is desired to determine the number of objects within the target cluster so that appropriate target discrimination analysis can be applied.

Monopulse radar processing is a radar processing technique in which the angular location of a target (also referred to as direction of arrival) can be determined within fractions of a beamwidth by comparing measurements received from two or more simultaneous beams. This technique for estimating the direction of arrival (DOA) of a target is often implemented in surveillance and tracking radar systems comprising a phased array antenna and a digital beamforming (DBF) processor. Typically, one beam is formed for transmission and two beams are formed upon reception for angle measurement. The term monopulse refers to the fact that the echo from a single transmitted pulse returning from a target is used to measure the angle of the target.

Monopulse processing may be implemented for a linear array of N antenna elements which provides respective signals x(0), . . . ,x(N−1) to a beamforming network. The output signals of the beamforming network are the sum, Σ, and difference, Δ, signals which are processed to generate an output signal, θ, representing the estimated direction of arrival. The sum beam pattern has a symmetrical amplitude profile with respect to its maximum at the boresight, and the difference beam pattern has an antisymmetrical amplitude profile with respect to a zero response at the boresight. In the beamforming network, each of the N input signals is split into two paths, linearly weighted, and then added together. The DOA of a target signal is determined by evaluating (e.g., from a look up table or from a graph) the ratio of the difference signal over the sum signal.

Monopulse processing may also be implemented for planar arrays in which the target azimuth and elevation angles are of interest. In this case the sum and difference signals represent sum and difference signals for angles in elevation and azimuth. These angles are represented by the following symbols: Δ_(E) represents the difference signal in elevation, Δ_(A) represents the difference signal in azimuth, Σ represents the sum signal in elevation as well as in azimuth.

Although the known monopulse processing technique can identify the DOA when used in a surveillance mode, it cannot determine a number of targets within a single range-angle cell based on the echo signal sampled from a single pulse.

FIG. 1 is a diagram showing a plurality of surveillance radars 100, 101, 102 that are scanning the sky during an air raid. In FIG. 1, two groups 120 and 130 of aircraft are approaching the site of radar 100. The aircraft 120 a in group 120 are flying in close formation, so that all of the aircraft 120 a in group 120 fit within a single range cell 111 of beam 110. The range cell 111 may be, for example, 50 nautical miles range and meters wide for an exemplary 2-degree beam. In a regular surveillance mode, radar 100 is unable to determine the number of aircraft 120 a within group 120. In the normal surveillance mode, the beam sweeps through its full range of azimuth and elevation, as well as normal tracking. Conventional target detection means, such as a Kalman filter allows determination of the location (x, y, z) and velocity of targets.

In the discussion of processing below, the group 120 is referred to as a potential multiple target 120, because prior to completion of the raid counting mode processing, radar system 100 has not yet determined whether there is a single target or multiple targets 120 a within range cell 111.

In the exemplary embodiment, the radar 100 is capable of being switched to operate in a raid counting mode upon detection of a possible incoming aircraft or missile threat. The raid-counting mode allows early detection and assessment of the presence of multiple targets within a range cell. When a potential multiple target 120 is detected, or where target classification criteria indicate that there may be multiple targets (e.g., airplane raid or missile attack), or where the target may be accompanied by decoy or debris, upon detection, the raid counting mode is entered to determine whether there is one target or multiple targets. In the raid-counting mode, surveillance is interrupted briefly, and an interrogation waveform is generated and transmitted in the direction of the potential multiple target 120.

In the raid-counting mode, super-resolution techniques use digital beamforming (DBF) to provide multiple degrees of freedom for resolving the number of targets within the range angle cell for the detection. Super-resolution is also made possible by transmitting consecutive pulses to the potential multiple target 120, and collecting and recursively processing a plurality of echo returns from the potential multiple target 120 within a sufficiently short period that the group 120 remains within the single range cell 111. During this short period, the potential multiple target can be considered substantially stationary, for purpose of maintaining the target within the single range cell to which the main beam is directed. In this context, recursive processing means that the algorithm for estimating the number of targets is repeated immediately for each consecutive echo return sampled from the potential multiple target 120. Since the range and speed of the approaching potential multiple target 120 are readily determined by conventional Kalman filter processing, the radar system 100 can readily estimate how long the target 120 will remain in the range cell 111 for this purpose.

A few different constraints define both the minimum and maximum number of pulses during the raid counting mode. The minimum number of pulses is generally the number required to reach convergence. The convergence criterion is satisfied, for example, if the estimated number of targets remains unchanged after the number of targets is recursively estimated a predetermined number of consecutive times, for example, two or three times without a change in the estimated number.

In general, if there are M targets, a good estimate of the number of targets is not achieved until there are more than M pulses. Further, accuracy depends on the signal to noise ratio (SNR). With a high SNR, five to seven pulses may be enough to get a good estimate for a group 120 containing five aircraft 120 a. If the SNR is too low, ten to twelve pulses might be required to get a good estimate for the same number of aircraft within a single range cell. With low SNR, the number of targets determined by the algorithm is more likely to fluctuate up and down with successive samples. Thus, the number of targets that can be accurately resolved within any given range cell depend on the SNR.

Note that there are also concrete limits on the maximum number of pulses that can be transmitted (and corresponding echo returns sampled). As explained below, the fast processing algorithm used in the exemplary embodiment is based on the assumption that the potential multiple target 120 remains within the range cell 111 throughout the raid counting mode. For example, after about ten to twelve pulses, target motion may come into play. This limit is typically not a problem in detecting aircraft, because a large number of airplanes will likely not all be contained within a single range cell. However, if the estimated number of targets continues to grow with every sample, until the maximum number of samples is collected, this would be an indication that there is a large number of targets within the range cell. It is understood that such factors as the pulse width, duty cycle, beam solid angle, and the speed of the target all affect how many consecutive pulses can be transmitted while any given potential multiple target 120 is still within the single range cell.

Another constraint is the desire to perform the superresolution raid counting function without interfering with the primary surveillance and tracking mission of the radar system 100. The duration of the raid tracking mode is constrained to be sufficiently short that the radar 100 is not impaired in its ability to resume surveillance and continue tracking other targets (not shown) that were being tracked before the radar entered the raid counting mode. At the completion of the raid-counting mode, the radar 100 is automatically returned to its normal surveillance and tracking operations. It is expected that at least ten to twelve consecutive pulses can be transmitted in the raid counting mode without interfering with surveillance and tracking operations.

FIG. 2 is a block diagram of the exemplary signal processing functions that are operable in the raid counting mode, to estimate a number of aircraft 120 a within the group 120 in range cell 111. The radar antenna 100 may be a conventional phased array monopulse antenna. Antenna 100 has a plurality of individual radiating elements 100 ₁₁, . . . , 100 _(NN).

The radar antenna 100 sends a set of consecutive pulses, and received respective echo signals from the consecutive pulses. A plurality of analog to digital converters (ADC's) 160 convert the analog signals from each element 100 ₁₁, . . . , 100 _(NN) to a respective digital signal. The antenna 100 has a digital beamformer for forming sum (Σ), azimuth difference (Δ_(AZ)) and elevation difference (Δ_(EL)) signals from the individual echo signals received by each element 100 ₁₁, . . . , 100 _(NN) of the antenna array 100. During normal adaptive DBF operation, a covariance matrix is generated in the course of developing adaptive beamforming coefficients, as is well known. In addition, in the exemplary embodiment, an eigenvalue decomposition is performed (by block processing) to calculate or renew the eigenvalue decomposition.

In block 170, a recursive covariance matrix estimation is formed based on each pulse sampled in the raid counting mode, each of which forms a snapshot of the measurement vector. The covariance matrix is saved in a storage device 175 (which may be, for example, any type of random access memory (RAM). This allows use of the most recently generated (or estimated) covariance matrix and the most recent sample data to form an estimated update to the covariance matrix.

In block 180, for each pulse sampled in raid counting mode, a fast recursive processing algorithm is used to update the eigenvalue decomposition of the covariance matrix. The number of significant eigenvalues of the covariance matrix determines the number of targets within the resolution cell. Eigenvalue decomposition is numerically intensive. Block processing or renewing the eigenvalue decomposition after each pulse may take too long a time to complete processing within a single pulse period. (depending on the speed of the processing hardware). Therefore, it is advantageous to perform a fast eigenvalue decomposition. An exemplary fast processing algorithm for this purpose is described further below. The eigenvalue decomposition results are stored in a memory device 185, which may be, for example, a RAM. The stored results can then be used to form an updated eigenvalue decomposition.

In block 190, a conventional algorithm such as the Akaike Information Criterion (AIC) or Minimum Description Length (MDL) may be used for refinement of the estimated number of targets. AIC is described in H. Akaike, “A New Look at the Statistical Model Identification,” IEEE Trans. Automatic Control, vol. 19, pp. 716-723, 1974, which is incorporated by reference herein in its entirety. MDL is described in M. Wax and T. Kailath, “Detection of signals by Information Theoretic Criteria,” IEEE Trans. Acoustics, Speech and Signal Processing, vol. ASSP-33, No. 2, pp. 387-392, April 1985, which is incorporated by reference herein in its entirety. Other algorithms may also be used.

The recursive implementation allows early detection and assessment updates. As data are received, the covariance matrix is accumulated. Then the eigenvalue decomposition is recursively computed for every sample update for the one range cell. A fast determination is achieved with the recursive procedure. Thus, it takes very little time to update the covariance matrix and eigenvalue decomposition.

The above described raid counting mode and function can be added to existing DBF radar products, or included as an advanced feature for the next generation of early warning radar products.

FIG. 3 is a flow chart diagram of an exemplary method according to the invention. At step 300, the radar 100 is initially operated in surveillance mode, and may be tracking targets.

At step 302, the covariance matrix is initially generated based on detected echo signals.

At step 304, the system detects the presence of a potential multiple target 120. The position and velocity of the potential multiple target 120 are determined.

At step 306, the radar 100 automatically switches from the surveillance mode to the raid counting mode.

At step 308, a loop is entered. This loop, including steps 310-320, is repeated until the estimated number of targets converges, or the maximum number of pulses for the raid counting mode have been transmitted, whichever occurs first.

At step 310, a pulse is transmitted.

At step 312, the echo return from the pulse transmitted at step 310 is sampled.

At step 314, the covariance matrix is recursively updated with each sample.

At step 316, an estimate of the eigenvalue decomposition is updated.

At step 318, the number of targets in potential multiple target 120 a is estimated.

At step 320, if the number of targets has converged, then step 322 is executed. If not, and the maximum number of pulses has not been reached, then steps 310-318 are repeated.

At step 322, the raid counting mode is completed, and the radar 100 returns to the surveillance mode.

Preferably, when a group of consecutive pulses are transmitted in a raid counting mode, the echo signals from each pulse are sampled and processed, to obtain the best estimate of the number of targets. However, it is contemplated that the invention can still be practiced in embodiments in which echoes from a subset of the pulses are processed. Thus, one or more of the echoes may be discarded or ignored. Further, although a relatively large number of pulses (e.g., 5-10 pulses) is preferred in the raid counting mode, the plurality of consecutive pulses may include any number of two or more pulses.

Eigenvalue Decomposition

Eigenspace decompositions are used in solving many signal processing problems, such as source location estimation, high-resolution frequency estimation, and beamforming. In each case, either the eigenvalue decomposition (EVD) of a covariance matrix or the singular value decomposition (SVD) of a data matrix is performed. For adaptive applications in a non-stationary environment, the EVD is updated with the acquisition of new data and the deletion of old data. This situation arises where the target sources are moving or the sinusoidal frequencies are varying with time. For computational efficiency or for real-time applications, an algorithm is used to update the EVD without solving the EVD problem from scratch again, i.e., an algorithm that makes use of the EVD of the original covariance matrix. In numerical linear algebra, this problem is called the modified eigenvalue problem. Other examples of modified eigenvalue problems include extension and restriction problems where the order of the matrix is modified, corresponding to filter order updating or downdating.

One aspect of the exemplary embodiment of the invention is the use of a fast recursive eigenvalue decomposition method in processing the radar echo signals in a raid-counting mode. Formally, these problems are concerned with computing the eigensystem of Hermitian matrices that have undergone finite changes that are of restricted rank. The rank values of the modified part are usually small compared with the rank values of the original matrices. In these situations, perturbation ideas relating the eigensystem of the modified and original matrices can be exploited to derive a computationally efficient algorithm.

In a time-varying environment, there are two strategies for updating the covariance matrix. The most common one is the rank-1 update, which involves applying an exponential forgetting window to the covariance matrix, i.e.,

{circumflex over (R)}=μR+(1−μ)αα^(H)  (1)

where R and {circumflex over (R)} correspond to the original and updated covariance matrices, respectively, μ is an appropriate exponential forgetting factor, and a is the most recent data vector. The data vectors correspond to linear prediction sample vectors in frequency estimation or snapshots in array processing. The exponential window approach may have several drawbacks: the influence of old data can last for a very long time, and the exponential forgetting factor, μ, must be determined appropriately.

Another strategy is to use a sliding window, which is analogous to short-time signal analysis, where data within the window is assumed to be stationary. This strategy corresponds to adding a row to and deleting a row from the data matrix, simultaneously, or to the following rank-2 covariance matrix update problem:

{circumflex over (R)}=R+αα ^(H)−ββ^(H)  (2)

where α is the data vector to be included, and β is the data vector to be deleted. The eigenvalue can be computed explicitly when the order of the matrix is less than 5 (say, 3 or 4) after deflation. One can also add and delete blocks of data, leading to the general rank-κ modification problem, and one can modify equation (2), or the rank-κ modification problem, by adding weighting factors, thus indicating the relative weight of the previous covariance matrix and the new data vector in forming the new covariance matrix estimate.

Simultaneous data addition and deletion have also been considered in other signal processing applications such as recursive least squares problems. Of course, the modification problem can be solved by applying a rank-1 update as many times as desired. That approach is computationally involved because nonlinear searches for eigenvalues have to be carried out for each rank-1 update, and the procedure is repeated for κ times. Solving this eigenvalue search problem in an efficient way speeds up the process. It should also be noted that subtracting data may lead to ill-conditioning, since the smallest eigenvalue may move toward zero. Theoretically, this should not happen because only different segments of data are used for forming the covariance matrix. Numerically, the ill-conditioning may happen; thus, in general, data subtraction should be avoided. The choice of updating schemes depends on specific applications and assumptions in signal sources. The exemplary embodiment of the present invention provides an algorithm for recursively updating the EVD of the covariance matrix when the covariance matrix is under low-rank updating, which may include data deleting.

An overview of the modified eigenvalue problem for raid counting is provided herein and its application to the recursive updating of the eigen-subspace when the covariance matrix is under low-rank updating. It includes a theoretical framework in which rank-κ updates are related to one another. The spectrum-slicing theorem enables location of the eigenvalue to any desired accuracy by means of the inertia of a much reduced size Hermitian matrix whose elements depend on the eigenvalue parameter, λ. This idea is incorporated and a complete algorithm and analysis is worked out for updating the eigen-decomposition of the covariance matrix as it arises in eigenbased techniques for frequency or angle of arrival estimation and tracking. A novel algorithm is employed for computing the eigenvector and work out the deflation procedure for rank-κ updates. The efficient procedure for computing eigenvalues is a two-step procedure. It improves the computational complexity from O(N³) to O(N²k). The deflation procedure is important for the eigen-subspace updating in high-resolution algorithms, as high filter order leads to multiplicity of noise eigenvalues. If only the principal eigenvalues and eigenvectors need to be monitored (as in the PE algorithm), the noise eigenvalue multiplicity consideration would lead to a highly efficient algorithm. An analysis of the computational complexity indicates an improvement of an order of magnitude from O(N³) to O(N²k) when compared with prior known routines. The most efficient EVD routines involve Householder reduction to tridiagonal form followed by QL iteration.

An efficient algorithm for computing the eigensystem of the modified covariance matrix is described is below. The algorithm involves a nonlinear search for the eigenvalues that can be done in parallel. Once the eigenvalues are obtained, the eigenvectors can be computed explicitly in terms of an intermediate vector, which is a solution of a deflated homogeneous linear system. The general procedure, coupled with the multiplicity of noise eigenvalues in subspace signal processing applications, leads to a highly efficient algorithm for adaptive estimation or tracking problems.

II. Updating the EVD of the Covariance Matrix

(A) Modified Eigenvalue Problem

The modified eigenvalue problem is concerned with computing the eigensystem of the modified Hermitian matrix, given the a priori knowledge of the eigensystem. of the original matrix. This specifically concerns the following additive modification:

{circumflex over (R)}=R+E  (3)

where {circumflex over (R)} and R and RεC^(N×N) are the modified and original covariance matrices and EεC^(N×N) is the additive modification matrix. This matrix is also Hermitian, and, in general, is of indefinite nature; i.e., it may have negative eigenvalues (corresponding to downdating). Assume E is of rank k, where k is usually much smaller than N. Because E is Hermitian, it has the following weighted outer product expansion:

E=USU ^(H)  (4)

where UεC^(N×k) and SεR^(k×k) is a nonsingular matrix. For example, equation (4) can be obtained as the eigenvalue and eigenvector expansion of E, where S is a diagonal matrix with eigenvalues on the diagonal and U is the corresponding orthonormal eigenvector matrix. Another example for the decomposition of E, as shown in equation (4), is expressed directly in terms of the data. In that case, S has diagonal elements equal to 1 or −1, corresponding to updating or downdating, respectively, and U is the matrix with the corresponding data vectors. U is then not orthonormal. A priori information of the EVD of R is also available as follows:

R=QDQ ^(H)  (5)

where DεR^(N×N), QεC^(N×N), D=diag[d₁,d₂ . . . d_(N)] is the diagonal eigenvalue matrix, and Q=[q₁, . . . q_(N)] is the corresponding eigenvector matrix. Note that Q is an orthonormal matrix, i.e.,

QQ ^(H) =Q ^(H) Q=I  (6)

The problem now is to find the modified eigensystern. Assuming that λ, x are the eigenpairs, of R, the following expression is obtained:

({circumflex over (R)}−λI)x=0  (7)

The eigenvalue can be determined by solving for the zeros of

det[{circumflex over (R)}−λI]=0  (8)

Substituting {circumflex over (R)} from (3) and E from (4) into (7) gives the following expression:

(R−λI)x+USU ^(H) x=0  (9)

It is convenient to split away the rank-k modification aspect from the rest of the problem by inducing the following system of equations, where y=SU^(H) x and y ε=C^(k):

(R−λI)x+Uy=0  (10a)

U ^(H) x−S ⁻¹ y=0  (10b)

Solving x in terms of y in (10a) and substituting it into (10b) gives the following:

 W(λ)y=0  (11)

where

W(λ)=S ⁻¹ +U ^(H)(R−λI)⁻¹ U  (12)

Note that W(λ) can be identified to be the Schur complement of R−λI in M(λ)[26] where $\begin{matrix} {{M(\lambda)} = \begin{bmatrix} {R - {\lambda \quad I}} & U \\ U^{H} & {- S^{- 1}} \end{bmatrix}} & (13) \end{matrix}$

W(λ) is also called the Weinstein-Aronszajn (W-A) matrix, which arises in perturbation problems in Hilbert space operators. The modified eigenvalues can be obtained from solving det[W(λ)]=0 rather than from equation (8). In fact, λ is an eigenvalue of {circumflex over (R)}, i.e., λελ({circumflex over (R)}) if and only if λ is a solution of det[W(λ)]=0. This can be derived easily by using the known Schur equation on equation (13), leading to $\begin{matrix} {{\det \left\lbrack {R - {\lambda \quad I}} \right\rbrack} = \frac{\det \left\lbrack {M(\lambda)} \right\rbrack}{\det \left\lbrack S^{- 1} \right\rbrack}} & (14) \end{matrix}$

Because S is invertible, det[└{circumflex over (R)}−λI┘=0 will imply det[M(λ)]=0. Also, det[M(λ)] can be expressed as

det[M(λ)]=(−1)^(k) det[R−λI]det[W(λ)]

leading to $\begin{matrix} \begin{matrix} {{\det \left\lbrack {W(\lambda)} \right\rbrack} = \quad {\left( {- 1} \right)^{k}\frac{\det \left\lbrack {M(\lambda)} \right\rbrack}{\det \left\lbrack {R - {\lambda \quad I}} \right\rbrack}}} \\ {= \quad {\left( {- 1} \right)^{k}\frac{\underset{i = 1}{\overset{N}{\pi}}\left( {{\hat{\lambda}}_{i} - \lambda} \right)}{\underset{i = 1}{\overset{N}{\pi}}\left( {\lambda_{i} - \lambda} \right)}}} \end{matrix} & (15) \end{matrix}$

with {circumflex over (λ)}_(i)ελ({circumflex over (R)}) and λ_(i)ελ(R). Thus {{circumflex over (λ)}_(i)} and {λ_(i)} are the zeros and poles of the rational polynomial det[W(λ)]. Note that the above derivation is valid only when the eigenvalues of R and {circumflex over (R)} are distinct. In fact, R−λI in equation (12) is not invertible when λ coincides with one of the eigenvalues of R. A deflation procedure is prescribed when some of the eigenvalues of the modified and original matrices are in fact the same. Note that w(λ)=det[W(λ)] is a nonlinear equation, which is easy to evaluate. W(λ) is a k×k matrix which is of a dimension much smaller than the N×N matrix {circumflex over (R)}−λI. Moreover, the resolvant (R−λI)⁻¹ is easy to compute if the EVD of R is available, i.e.,

W(λ)=S ⁻¹ +U ^(H) Q(D−λI)⁻¹ Q ^(H) U  (16)

where (D−λI) is a diagonal matrix. The fast algorithm to be described depends on a spectrum-slicing theorem relating the eigenvalues of the modified matrix to the eigenvalues of the original matrix. This theorem enables the search to be localized in any interval. Moreover, the search can be carried out in parallel, leading to an efficient implementation.

Deflation

Several situations exist for deflating the problem. The details of two situations are described: (1) U is orthogonal to q_(i), and (2) there are multiplicities of the eigenvalues of the original covariance matrix. The consideration here is for rank-k update. Other special situations exist where the problem can be deflated immediately, such as the existence of zero elements in the update vector. For the first case, q_(i) ^(H)U=0; therefore d_(i) and q_(i) remain the eigenpair of the modified matrix {circumflex over (R)}. For the second case, if λ is an eigenvalue of multiplicity m with the corresponding set of eigenvectors Q=[q_(i) . . . q_(m)], it is then possible to perform a Householder transformation on Q, such that the last M−1 eigenvalues are orthogonal to u₁ (where U=[u₁ . . . u_(k)]), i.e.,

QH ₁ =└q ₁ ⁽¹⁾ . . . q _(m) ⁽¹⁾ ┘ΔQ ⁽¹⁾  (17a)

q _(i) ⁽¹⁾ ^(H) u ₁=0 i=2, . . . m  (17b)

Thus, {q_(i) ⁽¹⁾}_(i=2) ^(m) remain the eigenvectors of {circumflex over (R)} corresponding to eigenvalue λ. The Householder matrix H₁ is an orthogonal matrix given by $\begin{matrix} {H_{1} = {1 - \frac{2\left( {b_{1}b_{1}^{H}} \right)}{b_{1}^{H}b_{1}}}} & (18) \end{matrix}$

where

 b ₁ =z+σe _(i)

with Q^(H)u₁=z, σ∥z∥₂ and e₁=[1,0 . . . 0]^(H). Now let Q₁=[q₂ ⁽¹⁾ . . . q _(m) ⁽¹⁾], and after performing another appropriate Householder transformation, we obtain

{circumflex over (Q)} ⁽¹⁾ H ₂ =[q ₂ ⁽²⁾ q ₃ ⁽²⁾ . . . q _(m) ⁽²⁾ ]q _(i) ^((2)H) u ₂=0 i=3, . . . m  (19)

After continuing this procedure k times until

{circumflex over (Q)} ^((k−1)) H _(k) =[q _(k) ^((k)) q _(k+1) ^((k)) . . . q _(m) ^((k)) ]q _(i) ^((k)H) u _(k)=0 i=k+1, . . . m  (20)

then {q_(i) ^((k))}_(i=k+1) ^(m) are the eigenvectors of {circumflex over (R)} with λελ({circumflex over (R)}) of multiplicity m−k.

Spectrum-Slicing Theorem

Assuming all deflation procedures have been carried out, i.e., all d_(i) are distinct and q_(i) ^(H)U=0, a computationally efficient algorithm can be used to locate the eigenvalues to any desired accuracy. The fast algorithm that allows one to localize the eigenvalue search depends on the following spectrum-slicing equation:

N _({circumflex over (R)})(λ)=N _(R)(λ)+D ⁺ [W(λ)]−D ⁺ [S]  (21)

where N_({circumflex over (R)})(λ) and N_(R)(λ) are the number of eigenvalues of {circumflex over (R)} and R less than λ, respectively, D⁺[W(λ)] is the positive inertia of W(λ) (i.e., the number of positive eigenvalues of W(λ) and, likewise, D⁺[S] is the positive inertia of S. The above spectrum-slicing equation (21) provides information of great computational value. W(λ) is easy to compute for each value of A. If Q^(H)U is computed and stored initially, the dominant cost is on the order of Nk² floating-point operations per evaluation. Upon evaluating the W-A matrix W(λ), one may then compute its inertia efficiently from an LDL^(H) or the diagonal pivoting factorization. This requires k³ number of operations. The value of N_(R)(λ) is available readily, as the EVD of R. D⁺[S] can be determined easily either from the EVD of E (because only a few eigenvalues are nonzero) or from counting the number of the data vectors to be added (assuming they do not align with each other). This needs to be determined only once. The spectrum-slicing equation provides an easy mechanism for counting the eigenvalues of {circumflex over (R)} in any given interval. This information enables one to localize the search in much the same way as Sturm sequence/bisection techniques are used in polynomial root finding. The bisection scheme can be carried out until convergence occurs. The convergence rate is linear. The eigenvalue search algorithm can be summarized as follows:

1. Use the knowledge of the original spectrum and equation (21) to localize the eigenvalues to disjoint intervals.

2. For each iteration step of each eigenvalue search in the interval (l,u) set ${\lambda = \frac{1 + u}{2}},$

and test it with N_({circumflex over (R)})(λ) (equation (21)). Repeat until convergence to desired accuracy.

Since the distribution of the eigenvalue of the original matrix is known, the eigenvalues can be localized to disjoint intervals easily by using equation (21). For the bisection search, the dominant cost for each iteration is the evaluation of W(λ) and the LDL^(H) decomposition for the evaluation of W(λ).

This algorithm can be illustrated by considering the following numerical example. Let the original covariance matrix be given by R=diag(50, 45, 40, 35, 30, 25, 20, 15, 10, 5). Thus the eigenvalues are the diagonal elements, and the eigenvectors are the unit vectors {e_(i)}_(i) ¹⁰=₁. Now assume the covariance matrix undergoes the following rank-3 modification given by

{circumflex over (R)}=R+u ₁ u ₁ ^(t) +u ₂ u ₂ ^(t) +u ₃ u ₃ ^(t)

where u₁, u₂, and u₃ are randomly generated data vectors given by [0.3563, −0.2105, −0.3559, −0.3566, 2.1652, −0.5062, −1.1989, −0.8823, 0.7211, −0.00671^(t) [−0.5539, −0.4056, −0.3203, −1.0694, −0.5015, 1.6070, 0.0628, −1.6116, −0.4073, −0.59501}^(t), and [0.6167, −1.1828, 0.3437, −0.3574, −0.4066, −0.3664, 0.8533, −1.5147, −0.7389, 2.1763]^(t). Thus S=diag(1,1,1) and D⁺[S]=3. For this example, the resulting eigenvalues are {circumflex over (λ)}=(51.1439,47.1839, 40.6324, 36.9239, 36.0696, 27.6072, 22.1148, 20.0423, 11.0808, 8.6086). Now let us illustrate how (21) can be used to locate the eigenvalues accurately. Start with the interval (20, 25). The associated W-A matrices are evaluated and the inertias computed. The counting formulas evaluated at 20+ε and 25−ε (N_(R)(25−ε)=4, N_(R)(20+ε)=2, ε=a small constant depending on accuracy requirement) indicate that there are two eigenvalues in the interval (20, 25).

This interval is then split into intervals (20, 22.5) and (22.5, 25). Evaluating equation indicates that an eigenvalue has been isolated in each disjoint interval. Bisection can then be employed to the desired accuracy. Table 1 illustrates the iteration steps for the interval (20, 21.25) for an accuracy of 10⁻³ digits. It converges to 20.0425 in 12 steps. The maximum number of iterations required for convergence depends on the interval, (l,u), to be searched and the accuracy requirement, ε. This number q can be determined such that 2^(q)>(u−l)/ε and is given by Table 2.

TABLE 1 Bisection Search for Eigenvalues Using the Spectrum-Slicing Equation Bisection Mid- Step Interval point N_(R)(λ) D⁺[W(λ)] N_(R)(λ) 1 (20, 21.25) 20.625 4 2 3 2 (20, 20.625) 20.3125 4 2 3 3 (20, 20.3125) 20.1563 4 2 3 4 (20, 20.1563) 20.0782 4 2 3 5 (20, 20.0782) 20.0391 4 1 2 6 (20.0391, 20.0782) 20.0587 4 2 3 7 (20.0391, 20.0587) 20.0489 4 2 3 8 20.0391, 20.0489) 20.044 4 2 3 9 (20.0391, 20.044) 20.0416 4 1 2 10 (20.0416, 20.044) 20.0428 4 2 3 11 (20.0416, 20.0428) 20.0422 4 1 2 12 (20.0422, 20.0428) 20.0425 4 2 3

When an interval has been found to contain a single eigenvalue, λ, then bisection is a rather slow way to pin down λ, to high accuracy. To speed up the convergence rate, a preferable strategy would be to switch to a rapidly root-finding scheme after the roots have been sufficiently localized within subintervals by using the counting equation. Root-finding schemes, including variation of secant methods, can be employed. The order of convergence is 1.618 for secant methods, as against 1 for bisection. Thus convergence can be accelerated.

Eigenvector

Once the eigenvalues are obtained, the eigenvectors can be evaluated efficiently in two steps. First, the intermediate vector y can be solved from the k×k homogeneous Hermitian system (11). y can actually be obtained as the byproduct of the LDL^(H) decomposition of W(λ); i.e., y is the zero eigenvector of W(λ) for the convergent eigenvalue λ. The eigenvector x can then be computed explicitly using equation (10a). This two-step procedure is much more efficient than solving the original N×N homogeneous system of equation (7) or the conventional eigenvector solver using the inverse iteration. The explicit expression x relating y is given by $\begin{matrix} \begin{matrix} {x = \quad {{- \left( {R - {\lambda \quad I}} \right)^{- 1}}{Uy}}} \\ {= \quad {{- {Q\left( {D - {\lambda \quad I}} \right)}^{- 1}}Q^{H}{Uy}}} \\ {= \quad {- {\sum\limits_{i = 1}^{N}\quad {\frac{q_{i}^{H}{Uy}}{\left( {d_{i} - \lambda} \right)}q_{i}}}}} \end{matrix} & \text{(22a)} \end{matrix}$

Normalizing x gives the update eigenvectors {circumflex over (q)}, i.e., $\begin{matrix} {\hat{q} = \frac{x}{{x}_{2}}} & \text{(22b)} \end{matrix}$

TABLE 2 Number of Number of Subintervals to be Iteration Searched Steps 10² 7 10³ 10 10⁴ 14 10⁵ 17 10⁶ 20

The computational complexity for solving the k×k homogeneous Hermitian system is O(k³) and the back substitution of equation (22) involves an order of magnitude O(N²k). This is to be contrasted to the Householder reduction followed by QL Implicit Shift, which requires complexity of order of magnitude O(N³). Similarly, the inverse iteration requires O(N³). This represents an order of magnitude improvement from O(N³) to O(N²k).

For completeness, a discussion on the rank-1 and rank-2 updates is provided. Since w(λ) and its derivatives can be evaluated easily for these two cases, Newton's method can be employed for the eigenvalue search. Some new results were obtained as we worked out the complete algorithm, including the deflation procedure (for high-order rank updates), bounds for the eigenvalues (derived from the spectrum-slicing theorem instead of DeGroat and Roberts' generalized interlacing theorem), as well as the explicit eigenvector computation.

(B) Rank-1 Modification

For rank-1 updating modification {circumflex over (R)}=R+αα^(H), the modification matrix E can be identified with E=αα^(H), corresponding to the decomposition equation (4) with U=α and S=1. W(λ) is a 1×1 matrix, which is also equal to the determinant w(λ), i.e., $\begin{matrix} \begin{matrix} {{w(\lambda)} = \quad {1 + {{\alpha^{H}\left( {R - {\lambda \quad I}} \right)}^{- 1}\alpha}}} \\ {= \quad {1 + {\sum\limits_{i = 1}^{N}\quad \frac{{{q_{i}^{H}\alpha}}^{2}}{\left( {d_{i} - \lambda} \right)}}}} \end{matrix} & (23) \end{matrix}$

This is a rational polynomial, with N roots corresponding to N eigenvalues.

It is assumed that this is an N×N problem for which no deflation is possible. Thus, all d_(i) are distinct, and q_(i) ^(H)α≠0. The eigenvalues λ_(i), of the rank-1 modified Hermitian matrix satisfy the following interlacing property:

d _(i) <λ _(i) <d _(i−1) i=1,2, . . . N  (24a)

with d₀=d₁+|α|². Therefore, the search intervals for each λ_(i) can be restricted to I_(i)=(d_(i), d_(i−1)). for all i=1,2, . . . N. For downdating, {circumflex over (R)}=R−ββ^(t), the interlacing equation is given by

d _(i+1)<λ_(i) <d _(i) i=1,2, . . . N  (24b)

where d_(N+1)=d_(N)−|β|². The corresponding search intervals for each λ can be restricted to I=(d_(i+1),d_(i)). An iterative search technique can then be used on w(λ) to identify the updated eigenvalues. The function w(λ) is a monotone increasing function between its boundary points because $\begin{matrix} {{w^{\prime}(\lambda)} = {{\sum\limits_{i = 1}^{N}\quad \frac{{{q_{i}^{H}\alpha}}^{2}}{\left( {d_{i} - \lambda} \right)^{2}}} > 0}} & (25) \end{matrix}$

Thus, the following Newton's method, safeguarded with bisection, can be applied in an iterative search to identify the j-th eigenvalue, λ. For convenience, let us denote the endpoints of the interval by l=d_(j), and u=d_(j−1). The full set of eigenvalues can be solved in parallel by using the following iterative algorithm for each eigenvalue: $\begin{matrix} {\lambda_{*}^{({k + 1})} = {\lambda^{(k)} - \frac{w\left( \lambda^{(k)} \right)}{w^{\prime}\left( \lambda^{(k)} \right)}}} & (26) \\ {\lambda^{({k + 1})} = \left\{ \begin{matrix} {\lambda_{*}^{({k + 1})}\quad {if}\quad \lambda_{*}^{({k + 1})}\varepsilon \quad I_{j}} \\ {{{{\frac{\lambda^{(k)} + u}{2}\quad {if}\quad \lambda_{*}^{({k + 1})}}\rangle}u},{\lambda^{(k)}\quad {replaces}\quad l}} \\ {\frac{\lambda^{(k)} + l}{2}\quad {if}\quad \lambda^{({k + 1})}{\langle{l,{\lambda^{(k)}\quad {replaces}\quad u}}}} \end{matrix} \right.} & (27) \end{matrix}$

and stopping if |λ^((k+1))−λ^((k))|<δλ^((k+1)), where δ is the convergence threshold. Note that when an iteration goes outside the restricted zone, since the gradient is greater than zero, this indicates the direction in which the solution is to be found. Consequently, the interval can be further restricted as indicated. Newton's method is guaranteed to converge, and this convergence is quadratic near the solution. It should be noted that Newton's method is based on a local linear approximation to the function w(λ). Since w(λ) is a rational function, it is possible to speed up the convergence rate by using simple rational polynomials for local approximations.

Once the eigenvalues are determined to sufficient accuracy, the eigenvector can be solved in a procedure described in (24). It is given explicitly as follows: $\begin{matrix} {x = {- {\sum\limits_{i = 1}^{N}\quad {\frac{q_{i}^{H}\alpha}{\left( {d_{i} - \lambda} \right)}q_{i}}}}} & \text{(28a)} \\ {\hat{q} = \frac{x}{{x}_{2}}} & \text{(28b)} \end{matrix}$

Exponential Window Rank-1 Update

This procedure can be modified to accommodate the exponential window easily. For the following exponential window, rank-1 updating modification {circumflex over (R)}=μR+(1−μ)αα^(H) the Weinstein-Aronszajn matrix W(λ) is a 1×1 matrix, which is also equal to the determinant w(λ), $\begin{matrix} \begin{matrix} {{w(\lambda)} = \quad {1 + {\left( {1 - \mu} \right){\alpha^{H}\left( {{\mu R} - {\lambda \quad I}} \right)}^{- 1}\alpha}}} \\ {= \quad {1 + {\left( {1 - \mu} \right){\sum\limits_{i = 1}^{N}\quad \frac{{{q_{i}^{H}\alpha}}^{2}}{\left( {{ud}_{i} - \lambda} \right)}}}}} \end{matrix} & \text{(29)} \end{matrix}$

The N roots are the updated eigenvalue. They must satisfy the following modified interlacing property:

μd _(i)<λ_(i) <μd _(i−1) i=1,2, . . . N  (30)

With ud₀=ud₁+|α|². Therefore, the search intervals for each λ_(i) can be restricted to I_(i)=(μd_(i),μd_(i−1)) for all i=1,2 . . . N. Assuming eigenvalues do not change dramatically from one update to another, d_(i) would be a good initial estimate for λ_(i). Once the eigenvalues are determined to sufficient accuracy, the eigenvector is given explicitly as follows: $\begin{matrix} {{\hat{x}}_{i} = {{- \left( {1 - u} \right)}{\sum\limits_{k = 1}^{N}\quad \frac{\left( {q_{k}^{H}\alpha} \right)q_{k}}{\left( {{\mu \quad d_{k}} - \lambda_{i}} \right)}}}} & (31) \end{matrix}$

This can be normalized accordingly.

(C) Rank-2 Modification

For a rank-2 modification problem, equation (4) can be expressed in the following: $\begin{matrix} {\hat{R} = {R = {{{\lbrack{\alpha\beta}\rbrack \begin{bmatrix} 1 & 0 \\ 0 & {- 1} \end{bmatrix}}\begin{bmatrix} \alpha^{H} \\ \beta^{H} \end{bmatrix}}\quad \quad = {R + {USU}^{H}}}}} & (32) \end{matrix}$

where U=[αβ] and S=diag(1, −1). The Weinstein-Aronszajn matrix W(λ) is now given by

W(λ)=S ⁻¹ +U ^(H) Q(D−λI)⁻¹ Q ^(H) U  (33)

Let Q^(H)U=[yz] and W(λ) can be computed easily with the following expression for the determinant w(λ) $\begin{matrix} {{w(\lambda)} = {{\left( {1 + {\sum\limits_{i = 1}^{N}\quad \frac{{y_{i}}^{2}}{\left( {d_{i} - \lambda} \right)}}} \right)\left( {1 - {\sum\limits_{i = 1}^{N}\quad \frac{{z_{i}}^{2}}{\left( {d_{i} - \lambda} \right)}}} \right)} + {\left( {\sum\limits_{i = 1}^{N}\quad \frac{y_{i}^{H}z_{i}}{\left( {d_{i} - \lambda} \right)}} \right)\left( {\sum\limits_{i = 1}^{N}\quad \frac{z_{i}^{H}y_{i}}{\left( {d_{i} - \lambda} \right)}} \right)}}} & (34) \end{matrix}$

Assuming all deflation procedures have been carried out, i.e., all d_(i) are distinct and q_(i) ^(H)α≠0, q_(i) ^(H)β≠0, simultaneously, the interlacing property relating the modified eigenvalues to the original eigenvalues is much more complicated than the rank-1 case. Combining the interlacing theorems for the rank-1 update equation (24a) and the rank-1 downdate equation (24b) simultaneously, provides the following generalized interlacing theorem for the rank-2 update:

d _(i+1) <λ _(i) <d _(i−1)  (35)

where d_(N+1)=d_(N)−|β|² and d₀=d₁+|α|². That is, the modified eigenvalues are bounded by the upper and lower eigenvalues, of the original covariance matrix. In this situation, each interval may have zero, one, or two eigenvalues. Fortunately, the spectrum-slicing equation can be used to isolate the eigenvalues in disjoint intervals. Once the eigenvalues are isolated, Newton's method can be employed for the eigenvalue search. This nonlinear search can be implemented in parallel as for the rank-1 case.

The eigenvector can be determined in two steps. First, an intermediate vector, y, can be obtained as the solution of the homogeneous system equation (11), and the eigenvector, x, can be obtained explicitly in terms of y, as in equation (22). Since k=2, we can specify the homogeneous system solution y=[1v]^(H). Solving W(λ) y=0 gives v $\begin{matrix} {v = {- \frac{\left( {1 + a} \right)}{b}}} & (36) \end{matrix}$

where $a = {{1 + {\sum\limits_{i = 1}^{N}\quad {\frac{{y_{i}}^{2}}{\left( {d_{i} - \lambda} \right)}\quad {and}\quad b}}} = {\sum\limits_{i = 1}^{N}\quad \frac{y_{i}^{H}z_{i}}{\left( {d_{i} - \lambda} \right)}}}$

Using equation (24) we have the following explicit expression for the eigenvector $\begin{matrix} {x = {{- {\sum\limits_{i = 1}^{N}\quad {\frac{y_{i} + {vz}_{i}}{\left( {d_{i} - \lambda} \right)}q_{i}\quad {and}\quad q}}} = \frac{x}{{x}_{2}}}} & (37) \end{matrix}$

(D) Signal and Noise Subspace Updates with Multiplicity

In many applications, it is convenient to decompose the eigenvalues and eigenvectors into signal and noise eigenvalues and eigenvectors, respectively, i.e., $\begin{matrix} {\left. {\lambda_{1} \geq \lambda_{2} \geq \ldots \geq \lambda_{M}} \right)\quad \underset{\underset{= \sigma^{2}}{}}{\lambda_{M + 1} \approx \ldots \approx \lambda_{N}}} & (38) \end{matrix}$

and

S=[q ₁ q ₂ . . . q _(M)]  (39)

N=[q _(M+1) . . . q _(N)]  (40)

The first M eigenvalues are the signal eigenvalues corresponding to M complex sinusoids in frequency estimation or M target sources in array processing. The last N−M eigenvalues cluster to each other and correspond to the noise level. S and N are the signal and noise subspace, respectively. For a rank-1 update, the first M+1 eigenvalues and eigenvectors are modified, and the last N−M−1 eigenpairs stay the same. In order to conform to the model for M sources, we have the following update equation for eigenvalues:

{circumflex over (λ)}₁≧{circumflex over (λ)}₂≧ . . . ≧{circumflex over (λ)}_(M{circumflex over (σ)}) ²  (41)

where $\begin{matrix} {{\hat{\sigma}}^{2} = \frac{{\hat{\lambda}}_{M + 1} + {\left( {N - M - 1} \right)\sigma^{2}}}{\left( {N - M} \right)}} & (42) \end{matrix}$

Similarly, for a rank-k update, the first M+k eigenpairs are modified, and the rest remain the same. We have the following update equation for the noise eigenvalues according to the model given by equation (38): $\begin{matrix} {{\hat{\sigma}}^{2} = \frac{{\hat{\lambda}}_{M + 1} + {\hat{\lambda}}_{M + 2} + {\ldots \quad {\hat{\lambda}}_{M + k}} + {\left( {N - M - k} \right)\sigma^{2}}}{\left( {N - M} \right)}} & (43) \end{matrix}$

If, in fact, there are only M sources, {{circumflex over (λ)}_(M+i)}_(i=1) ^(k) should be close to σ². If {{circumflex over (λ)}_(M+1)}_(i=1) ^(k) are not close to σ² there may be another sinusoid or target. This observation can be used for detection of new sources.

(E) Computational Complexity

Note that rather different techniques are used in the fast algorithm and in the conventional algorithm for solving the eigensystem. Basically, the present algorithm involves iterative search for eigenvalues (using the LDL^(H) decomposition together with the spectrum-slicing equation) and then subsequent eigenvector computation. However, all modem eigensystem solvers involve similarity transformation for diagonalization. If a priori knowledge of the EVD of the original covariance matrix were not available, the similarity transformation technique would be generally preferred, since it has better computational efficiency and numerical properties. The present fast algorithm makes use of the fact that the eigenvalue of the modified matrix is related to the eigenvalue of the original matrix. Moreover, the eigenvalue can be isolated to disjoint intervals easily and simultaneously searched in parallel. It can be located to any desired accuracy by using a spectrum-slicing equation requiring evaluation of the inertia of a much-reduced-size (k×k) Hermitian matrix. In this situation, the computational complexity is evaluated and compared with the complexity of the conventional eigensystem solver. The results are compared with distinct eigenvalue situations. Further reduction in computational complexity can be achieved when the multiplicity of the noise eigenvalues can be exploited as discussed above in the Signal and Noice Subspace Updates section.

The grand strategy of almost all modem eigensystem solvers is to push the matrix R toward a diagonal form by a sequence of similarity transformations. If the diagonal form is obtained, then the eigenvalues are the diagonal elements, and the eigenvectors are the columns of the product matrices. The most popular algorithms, such as those used in IMSL, EISPACK, or the Handbook for Automatic Computation, involve the following two steps: (1) Householder transformation to reduce the matrix to tridiagonal form and (2) the QL algorithm with an implicit shift to diagonalize it. In the limit of large N, the operation count is approximately 4⅓N ³.

For the algorithm described herein, the efficiency depends on the fact that the eigenvalues can be isolated easily and thus searched in parallel. For each iteration step, W(λ) is evaluated and the inertia computed. The overall computational complexity is summarized as follows:

Function No. of Operations Overhead Evaluate S⁻ k Evaluate Q^(H) ₁ = Q^(H)U N²k Evaluate {q_(1i)q_(1i)}^(N) _(i) = 1 Nk² Total N²k + Nk² + k = N²k Eigenvalue Evaluate W(λ) Nk² LDL^(H) decomposition k³ Total for N_(i) number of iterations N_(i)(Nk² + k³) = N_(i)Nk² Eigenvector Backsubstitution N²(k + 1) − N²k Total (overhead, eigenvalue, eigenvector) 2 N²k + N_(i) Nk²

Thus, in general, the computational complexity is of order 2N²k+N_(i)Nk². It corresponds to an improvement from 4⅓N ³ to 2N²k+N_(i)Nk².

(F) Numerical Properties

It should be noted that the eigenvalue can be determined to any desired accuracy by using the spectrum-slicing equation. The nonlinear search is bisection with a linear convergent rate. The number of iterations depends on the accuracy requirement, and details are discussed above in Section II-A. A numerical example is also included in Section II-A to illustrate how the spectrum-slicing equation can be used to locate the eigenvalues to any desired accuracy. The calculation of the updated eigenvectors depends upon the accurate calculation of the eigenvalues. A possible drawback of the recursive procedures is the potential error accumulation from one update to the next. Thus the eigenpairs should be as accurate as possible to avoid excessive degradation of the next decomposition, which can be accomplished either from pairwise Gram-Schmidt or from full-scale Gram-Schmidt orthogonalization procedures on the derived eigenvectors. Experimental results indicate that the pairwise Gram-Schmidt partial orthogonalization at each update seems to control the error buildup in the recursive rank-1 updating. Another approach is to refresh the procedure from time to time to avoid any possible roundoff error buildup.

III. Adaptive EVD for Frequency or Direction of Arrival Estimation and Tracking

This section applies the modified EVD algorithms to the eigenbased techniques for frequency or angle of arrival estimation and tracking. Specifically, the adaptive versions of the principal eigenvector (PE) method of Tufts and Kumersan, the total least squares (TLS) method of Rahman and Yu, and the MUSIC algorithm are applied.

(A) Adaptive PE Method

In the linear prediction (LP) method for frequency estimation, the following LP equation is set up: $\begin{matrix} {{\begin{bmatrix} {x(0)} & \cdots & {x\left( {L - 1} \right)} \\ \vdots & \quad & \vdots \\ {x\left( {N - L - 1} \right)} & \quad & {x\left( {N - 2} \right)} \end{bmatrix}\quad\begin{bmatrix} {c(L)} \\ \vdots \\ {c(1)} \end{bmatrix}} = \begin{bmatrix} {x(L)} \\ \vdots \\ {x\left( {N - 1} \right)} \end{bmatrix}} & (46) \end{matrix}$

or

X ^(H) c=x  (47)

where L is the prediction order chosen to be M≦L≦N−1, M is the number of sinusoids, and X^(H) is the data matrix. Note that in the case of array processing for angle of arrival estimation, each row of the data matrix is a snapshot of sensor measurement. Premultiplying both sides of equation (47) by X gives the following covariance matrix normal equation:

Rc=r  (48)

where R=XX^(H) and r=Xx. The frequency estimates can be derived from the linear prediction vector coefficient c. In a non-stationary environment, it is desirable to update the frequency estimates by modifying the LP system continuously as more and more data are available. Specifically, the LP system is modified by deleting the first k rows and appending another k rows (corresponding to a rank-2k update) as follows: $\begin{matrix} {{\begin{bmatrix} {x(k)} & \cdots & {x\left( {L + k - 1} \right)} \\ \vdots & \quad & \quad \\ {x\left( {N + k - L - 1} \right)} & \cdots & {x\left( {N + k - 2} \right)} \end{bmatrix}\quad\begin{bmatrix} {c(L)} \\ \vdots \\ {c(1)} \end{bmatrix}} = \begin{bmatrix} {x\left( {L + k} \right)} \\ \vdots \\ {x\left( {N + k - 1} \right)} \end{bmatrix}} & (49) \end{matrix}$

which leads to the following modification of the covariance matrix normal equation:

{circumflex over (Rc)}={circumflex over (r)}  (50)

where $\begin{matrix} {\hat{R} = {R + {\sum\limits_{i = 1}^{k}\quad {\alpha_{i}\alpha_{i}^{H}}} - {\sum\limits_{i = 1}^{k}\quad {\beta_{i}\beta_{i}^{H}\quad {and}}}}} & (51) \\ {\hat{r} = {r + {\sum\limits_{i = 1}^{k}\quad {\alpha_{i}{x\left( {N + i - 1} \right)}}} - {\sum\limits_{i = 1}^{k}\quad {\beta_{i}{x\left( {L + i - 1} \right)}}}}} & (52) \end{matrix}$

where α_(i)=[x(N+i−L−1) . . . x(N+i−2)]^(H) and β_(i)=[x(i−1) . . . x(L+i−2)]^(H). The PE solution for ĉ is obtained using the following pseudo-rank approximation (assuming that there are M sources): $\begin{matrix} {\hat{c} = {\sum\limits_{i = 1}^{M}\quad {\frac{{\hat{q}}_{i}^{H}\hat{r}}{{\hat{\lambda}}_{i}}{\hat{q}}_{i}}}} & (53) \end{matrix}$

where {circumflex over (λ)} and {circumflex over (q)}_(i) are the eigenpair solutions at each time instance. The frequencies can then be obtained by first solving the zeros of the characteristic polynomials formed by ĉ. M of the zeros closest to the unit circle are then used for determining the sinusoidal frequency estimates.

Because only M principal eigenvalues and eigenvectors are used in equation (53) for solving the LP coefficient vector ĉ, it is desirable to modify the previous algorithm to monitor only the M principal eigenvalues and eigenvectors instead of the complete set of N eigenvalues and eigenvectors to facilitate computational efficiency. In order to implement the update, noise eigenvalues need to be monitored. It is not necessary to monitor the entire set of noise eigenvectors, however. Now assume the principal eigenvalue λ₁≦λ₂≧ . . . ≧λ_(M), the noise eigenvalue ρ² (of multiplicity N−M), and the signal subspace S=[q₁ . . . q_(M)] are available. The rank-2k update algorithm requires the knowledge of 2k noise eigenvectors, the noise eigenvalues, and the principal eigenvalues and eigenvectors. The 2k noise eigenvectors can be obtained in the normalized orthogonal projection of {α_(i)} and {β_(i)} on noise subspace N=[q_(M+1) . . . q_(N)]. These constructions lead to q_(j) ^(H)α_(i)=0 and q_(j) ^(H)β_(i)=0 for i=1, . . . k and j=M+2k, . . . N, and it is not necessary to construct {q_(j)}_(j=M+2k+1) ^(N). (This procedure corresponds to the deflation situation and subspace update with multiplicity as discussed in an earlier section.) σ² remains as the last N−M−2k+1 eigenvalue. The algorithm is summarized as follows:

1. Construct {q_(M+i)}_(i=1) ^(2k) such that they are orthogonal to {q_(i)}_(i=M+2k+1) ^(N), i.e., $\begin{matrix} {{q_{M + 1} = \quad {{\alpha_{j} - {\sum\limits_{i = 1}^{M + j - 1}\quad {\left( {q_{i}^{H}\alpha_{j}} \right)q_{i}\quad j}}} = 1}},{\ldots \quad k}} \\ {{q_{M + k + j} = \quad {{\beta_{j} - {\sum\limits_{i = 1}^{M + k + j - 1}\quad {\left( {q_{i}^{H}\beta_{j}} \right)q_{i}\quad j}}} = 1}},{\ldots \quad k}} \end{matrix}$

2. Conduct a nonlinear parallel search for {{circumflex over (λ)}₁, {circumflex over (λ)}₂, . . . {circumflex over (λ)}_(M+2k)} using (21). Conduct a nonlinear parallel search for {{circumflex over (λ)}₁, {circumflex over (λ)}₂, . . . {circumflex over (λ)}_(M+2k)} using (21).

3. Update the noise eigenvalue {circumflex over (σ)}² ${\hat{\sigma}}^{2} = \frac{{\hat{\lambda}}_{M + 1} + \ldots + {\hat{\lambda}}_{M + {2k}} + {\left( {N - M - {2k}} \right)\sigma^{2}}}{\left( {N - M} \right)}$

4. Update the signal subspace eigenvector using (24).

(B) Adaptive Total Least Squares Method

The TLS method is a refined and improved method for solving a linear system of equations when both the data matrix, X^(H), and the observed vector, x, are contaminated by noise. In the LP method for frequency estimation, both sides of the equation are contaminated by noise. Thus it is desirable to apply the TLS method to solve the LP equation. The relative factor for weighting the noise contribution for both sides of the equation is equal to 1, because X^(H) and x are derived from the same noisy samples {x(i)}. This leads to the following homogeneous system of equations: $\begin{matrix} {{\begin{bmatrix} {x(0)} & \ldots & {x(L)} \\ \vdots & \quad & \vdots \\ {x\left( {N - L - 1} \right)} & \quad & {x\left( {N - 1} \right)} \end{bmatrix}\quad\begin{bmatrix} c \\ {- 1} \end{bmatrix}} = 0} & (54) \end{matrix}$

or in terms of the covariance matrix $\begin{matrix} {{R\begin{bmatrix} c \\ {- 1} \end{bmatrix}} = 0} & (55) \end{matrix}$

where R=XX^(H) and X^(H) is the data matrix for (54). In a time-varying environment, we delete k rows and append k rows to the data matrix X^(H) in (54) as done in the adaptive PE method discussed above, leading to the following rank-2k modification of equation (55): $\begin{matrix} {{\hat{R}\begin{bmatrix} c \\ {- 1} \end{bmatrix}} = 0} & (56) \end{matrix}$

where $\hat{R} = {R + {\sum\limits_{i = 1}^{k}\quad {\alpha_{i}\alpha_{i}^{H}}} - {\sum\limits_{i = 1}^{k}\quad {\beta\beta}_{i}^{H}}}$

and {α_(i)},{β_(i)} are the appended and deleted rows, respectively. The TLS solution is obtained as the null vector solution of {circumflex over (R)}. In general, for M sinusoids or M target sources, there are N−M number of minimum eigenvalues and eigenvectors. Any vector in the noise subspace is a solution. Out of these infinite number of solutions, one can choose the following minimum norm solution: $\begin{matrix} {\hat{c} = {{- {\sum\limits_{k = {M + 1}}^{N}{\quad \frac{\left\lfloor {\hat{q}}_{k}^{*} \right\rfloor_{L + 1}}{\sum\limits_{k = {M + 1}}^{N}\quad \left\lbrack {\hat{q}}_{k}^{*} \right\rbrack_{L + 1}}\quad {\hat{q}}_{k}^{\prime}\quad {where}\quad {\hat{q}}_{k}}}} = \begin{bmatrix} {\hat{q}}_{k}^{\prime} \\ \left\lbrack {\hat{q}}_{k} \right\rbrack_{L + 1} \end{bmatrix}}} & (57) \end{matrix}$

Thus, in the TLS solution, it is the noise subspace N=[q_(M+1) . . . q_(N)] that must be monitored. Because the signal eigenvalues and eigenvectors are also used for updating the noise eigensystem, reduction in computational complexity, as done in the adaptive PE method, is not achieved.

(C) Adaptive MUSIC

In this subsection, the recursive version of a class of high-resolution algorithms is considered for multiple target angle estimation or frequency estimation based on the eigenvalue decomposition of the ensemble-averaged covariance matrix of the received signal. Consider a system of K moving targets to be tracked by an array of M sensors. The sensors are linearly distributed with each sensor separated by a distance d from the adjacent sensor. For a narrowband signal, the model of the output of the m-th sensor becomes $\begin{matrix} {{{r_{m}(t)} = {{{\sum\limits_{k = 1}^{K}\quad {{A_{k}(t)}^{{j2\pi}\quad {T_{k}{(t)}}\frac{{({m - 1})}d}{\lambda}}}} + {{n_{m}(t)}\quad m}} = 1}},2,{\ldots \quad M}} & (58) \end{matrix}$

where A_(k)(t) is the complex amplitude of the k-th target at time t,T_(k)(t)=sin {θ_(k)(t)} where θ_(k)(t) is the angle of arrival of the k-th target at time t, and N_(m)(t) is the m-th sensor noise. Using vector notation, equation (58) can be written as

r(t)=A(t)s(t)+N(t)  (59)

where [0230] ${r(t)} = {{\begin{bmatrix} {r_{1}(t)} \\ {r_{2}(t)} \\ \vdots \\ r_{M{(t)}} \end{bmatrix}\quad {s(t)}} = {{\begin{bmatrix} {s_{1}(t)} \\ {s_{2}(t)} \\ \vdots \\ s_{K{(t)}} \end{bmatrix}\quad {n(t)}} = \begin{bmatrix} {n_{1}(t)} \\ {n_{2}(t)} \\ \vdots \\ n_{M{(t)}} \end{bmatrix}}}$

and the M×K direction of arrival (DOA) matrix A(t) is defined as [0232] ${A(t)} = \begin{bmatrix} 1 & 1 & \ldots & 1 \\ ^{{j2}\quad \pi \quad \frac{T_{1}}{\lambda}} & ^{{j2}\quad \pi \quad \frac{T_{2}}{\lambda}} & \quad & ^{{j2}\quad \pi \quad \frac{T_{k}}{}} \\ \vdots & \vdots & \quad & \vdots \\ ^{{j2}\quad \pi \quad T_{1}\quad \frac{{({M - 1})}}{\lambda}} & ^{{j2}\quad \pi \quad T_{2}\quad \frac{{({M - 1})}}{\lambda}} & \quad & ^{{j2}\quad \pi \quad {T_{k}{({M - 1})}}} \end{bmatrix}$

The output covariance matrix can then be expressed as follows:

R(t)=A(t)S(t)A ^(H)(t)+σ²(t)I  (60)

where S(t)=E└s(t)s^(H)(t)┘ is the signal covariance matrix, and σ²(t) is the noise power. Assuming that K<M, the MUSIC algorithm applied at time t yields an estimate of the number of targets K, their DOA {θ_(k)(t)}, the signal covariance matrix S(t), and the noise power σ²(t), by examining the eigenstructure of the output covariance matrix R(t). R(t) can be estimated from an ensemble of outer products of snapshots in a sliding window or in an exponential forgetting window as discussed in Section 1.

The MUSIC algorithm and its root-finding variations are briefly reviewed here. Suppose at time t, the estimated covariance matrix has the following EVD: [0237] $\begin{matrix} \begin{matrix} {R = \quad {\sum\limits_{i = 1}^{N}{\lambda_{i}q_{i}q_{i}^{H}}}} \\ {= \quad {{\sum\limits_{i = 1}^{K}{\lambda_{i}q_{i}q_{i}^{H}}} + {\sigma^{2}{\sum\limits_{i = {K + 1}}^{N}{q_{i}q_{i}^{H}}}}}} \end{matrix} & (61) \end{matrix}$

The algorithm depends on the fact that that the noise subspace E_(N)=[q_(K+l) . . . q_(M)] is orthogonal to the signal manifold; i.e.,

E _(N) ^(H) u(θ)=0  (62)

where u(θ) is the steering vector of the angles to be searched. The conventional MUSIC algorithm involves searching for the peaks of the following eigenspectrum: [0241] $\begin{matrix} {{J(\theta)} = \frac{{u^{H}(\theta)}{u(\theta)}}{{u^{H}(\theta)}E_{N}E_{N}^{H}{u(\theta)}}} & (63) \end{matrix}$

To do this, the complete angular interval $\frac{- \pi}{2} \leq \theta \leq \frac{\pi}{2}$

is scanned. One can avoid the need for this one-dimensional scanning by the use of a root-finding approach. This can be accomplished by, for example, using a known root-MUSIC or minimum norm algorithm.

In the root-MUSIC algorithm, $^{{j2}\quad \pi \quad \frac{T_{k}}{\lambda}}$

is replaced by the complex variable z in the eigenspectrum J(θ) defined in (63). Let D(z) denote the resulting denominator polynomial. The polynomial D(z) can be expressed as the product of two polynomials, H(z) and H(z⁻¹), each with real coefficients. The first polynomial, H(z), has its zero inside or on the unit circle; K of them will be on (or very close to) the unit circle and represent the signal zero. The remaining ones represent extraneous zeros. The zeros of the other polynomial, H(z⁻¹), lie on or outside the unit circle, exhibiting inverse symmetry with respect to the zero of H(z). The angle estimation is thus performed by extracting the zeros of the polynomial D(z) and identifying the signal zeros from the knowledge that they should lie on the unit circle.

The minimum norm algorithm is derived by linearly combining the noise eigenvectors such that:

1. The first element of the resulting noise eigenvector is unity.

2. The resulting noise eigenvector lies in the noise subspace.

3. The resulting vector norm is minimum.

Equation (62) is then modified to [0249] $\begin{matrix} {{A(\theta)} = {\frac{\delta_{1}^{H}E_{N}E_{N}^{H}{u(\theta)}}{\delta_{1}^{H}E_{N}E_{N}^{H}\delta_{1}} = 0}} & (64) \end{matrix}$

where δ=₁ ^(H)=[10 . . . 0]. The angle estimation problem is then solved by computing the zeros of the resulting polynomial of equation (64) and identifying the signal zeros as the K zeros of A(z) that lie on (or very close to) the unit circle.

(IV.) Simulation Results

(λ) Numerical Properties

In this section, the numerical performance of the discussed algorithms are considered as demonstrated by simulation. The simulations are performed with a time-varying signal in additive white noise. Consider the measurement model (Equation 58) for a scenario where there are three sources (K=3) impinging on a linear array of 10 sensors (M=10). The signal-to-noise ratio for each source is 20 dB. The angles are given by θ₁(t)=5°,θ₂(t)=22° and θ₃(t)=12°. $\left( {K - 1} \right)\quad {\frac{2}{299}.}$

In each experiment, 100 updates are carried out. Each EVD update is obtained by updating the covariance matrix derived from the data snapshots within a window of length 41.

As recursive procedures may suffer potential error accumulation from one update to the next, therefore the sensitivity of the exemplary algorithm was investigated as a function of the order of the matrix, and the accuracy requirements for the eigenvalues searched. Stability and sensitivity tests have been conducted for this algorithm and comparisons of the performance of the recursive algorithms with conventional measures.

The angle estimates for various sizes of matrices (M=7,10) and eigenvalue search accuracy requirements (tol E−10, E−5) were compared with the estimates obtained from a conventional routine. It was observed that the performance is merely a function of the size of the matrix used, and is not dependent on whether a conventional eigenvalue decomposition routine or the present recursive procedure for the eigenvalue decomposition is used, nor on the accuracy requirements on the eigenvalue search. In fact the results are practically the same for each case.

Although an exemplary fast recursive eigenvalue decomposition technique is described above, other fast recursive eigenvalue decomposition updating techniques may be used. Preferably, the technique used is capable of updating the eigenvalue decomposition within a single pulse period (between the beginning of a pulse and the beginning of the next successive pulse).

Although the invention has been described in terms of exemplary embodiments, it is not limited thereto. Rather, the appended claim should be construed broadly, to include other variants and embodiments of the invention which may be made by those skilled in the art without departing from the scope and range of equivalents of the invention. 

What is claimed is:
 1. A method for estimating a number of targets within a main beam of an antenna array that transmits the main beam and receives echo returns from the main beam, comprising the steps of: (a) generating a covariance matrix using the echo returns; (b) detecting the presence of at least one target within a single range cell; (c) transmitting a plurality of consecutive pulses in a direction of the single range cell within a sufficiently short period that the at least one target remains within the single range cell while the plurality of consecutive pulses are transmitted; (d) sampling an echo signal from ones of the plurality of consecutive pulses; (e) estimating an updated covariance matrix each time one of the echo signals is sampled in step (d); (f) updating an eigenvalue decomposition each time the covariance matrix is updated; (g) estimating the number of targets in the single range cell based on the updated eigenvalue decomposition.
 2. The method of claim 1, wherein steps (c) through (f) are performed until a convergence criterion is satisfied.
 3. The method of claim 2, wherein the convergence criterion is satisfied if the estimated number of targets remains unchanged after step (g) is performed a predetermined number of consecutive times.
 4. The method of claim 1, wherein step (e) includes applying an exponential forgetting window to the covariance matrix.
 5. The method of claim 1, wherein step (e) includes using a sliding window to update the covariance matrix.
 6. The method of claim 1, wherein the eigenvalue decomposition is performed using a parallel spectrum-slicing algorithm.
 7. The method of claim 6, wherein a plurality of eigenvectors are computed as a solution of a homogeneous Hermitian system.
 8. The method of claim 1, wherein the number of targets is determined by the number of significant eigenvalues determined by the eigenvalue decomposition of step (f).
 9. The method of claim 1, further comprising performing at least one of the group consisting of a surveillance function and a tracking function before step (c).
 10. The method of claim 9, further comprising performing the at least one of the group consisting of a surveillance function and a tracking function after step (g).
 11. The method of claim 10, wherein the at least one of the group consisting of a surveillance function and a tracking function is discontinued while steps (c) through (g) are being performed.
 12. Apparatus for estimating a number of targets within a main beam of a radar system having an antenna that provides antenna array signals, comprising: means for generating a covariance matrix using the antenna array signals; means for detecting the presence of at least one target within a single range cell; means for causing the antenna to transmit a plurality of consecutive pulses in a direction of the single range cell within a sufficiently short period that the at least one target remains within the single range cell while the plurality of consecutive pulses are transmitted; means for sampling an echo signal from ones of the plurality of consecutive pulses; means for estimating an updated covariance matrix each time one of the echo signals corresponding to one of the consecutive pulses is sampled; means for updating an eigenvalue decomposition each time the covariance matrix is updated; and means for estimating the number of targets in the single range cell based on the eigenvalue decomposition.
 13. The apparatus of claim 12, wherein the eigenvalue decomposition updating means updates the eigenvalue decomposition until a convergence criterion is satisfied.
 14. The apparatus of claim 13, wherein the convergence criterion is satisfied if the estimated number of targets remains unchanged after the number generating means estimates the number of targets a predetermined number of consecutive times.
 15. The apparatus of claim 12, wherein the covariance matrix estimating means applies an exponential forgetting window to the covariance matrix.
 16. The apparatus of claim 12, wherein the covariance matrix estimating means uses a sliding window to update the covariance matrix.
 17. The apparatus of claim 12, wherein the eigenvalue decomposition updating means uses a parallel spectrum-slicing algorithm.
 18. The apparatus of claim 17, wherein the eigenvalue decomposition updating means computes a plurality of eigenvalues as a solution of a homogeneous Hermitian system.
 19. The apparatus of claim 12, wherein the number estimating means estimates the number of targets based on the number of significant eigenvalues determined by the eigenvalue decomposition updating means.
 20. The apparatus of claim 12, the radar system is capable of performing at least one of the group consisting of a surveillance function and a tracking function. 